package com.jusfoun.communication.dao;

import com.jusfoun.communication.model.AutoReply;
import com.jusfoun.communication.util.PageInfo;

import java.util.List;

/**
 * @author player six
 * @email jslcylcy@163.com
 * @create 2017-12-12 16:45
 **/
public interface AutoReplyDao {
    /**
     * app下所有自动回复消息数量
     *
     * @param appId
     * @return
     */
    long listCount(String appId);

    /**
     * 分页自动回复消息列表
     *
     * @param appId
     * @param pageInfo
     * @return
     */
    List<AutoReply> list(String appId, PageInfo pageInfo);

    /**
     * 新增
     *
     * @param autoReply
     * @return
     */
    AutoReply add(AutoReply autoReply);

    /**
     * 更新
     *
     * @param autoReply
     * @return
     */
    AutoReply update(AutoReply autoReply);

    /**
     * 查询当前app是否启用自动回复
     *
     * @param appId
     * @return
     */
    boolean isUseAutoReply(String appId);

    /**
     * 获取自动回复开始时间
     *
     * @param appId
     * @return
     */
    String getAutoReplyBeginTime(String appId);

    /**
     * 获取自动回复结束时间
     *
     * @param appId
     * @return
     */
    String getAutoReplyEndTime(String appId);

    /**
     * 保存自动回复配置信息
     *
     * @param appId
     * @param useAutoReply
     * @param autoReplyBegin
     * @param autoReplyEnd
     */
    void saveConfigure(String appId, boolean useAutoReply, String autoReplyBegin, String autoReplyEnd);

    /**
     * 删除
     *
     * @param appId
     * @param id
     */
    void delById(String appId, Long id);

    /**
     * 获取所有的自动回复列表
     *
     * @param appId
     * @return
     */
    List<AutoReply> listAll(String appId);
}
